﻿using System;
using System.IO;

namespace String方法练习
{
    class Program
    {
        static void Main(string[] args)
        {
            //练习1：接受用户输入的字符串，将其中的字符以与输入相反的顺序输出。“abc”——>“cda”
            //to.chararray tochararray tochararray tochararray tochararray tochararray tochararray
            //string a = "abcdefg";
            //char[] c= a.ToCharArray();
            //for (int i = 0; i < c.Length/2; i++)
            //{
            //    char d = c[i];
            //    c[i] = c[c.Length - 1-i];
            //    c[c.Length - 1 - i] = d;
            //}
            //a= new string(c);
            //Console.WriteLine(a);
            //for (int i = a.Length-1; i >=0 ; i--)
            //{
            //    Console.Write(a[i]);
            //}
            //练习二：接受用户输入的一句英语，将其中的单词以反序输出。“hello c sharp”——>“sharp c hello”
            //string str = "hello c sharp";
            //string[] strt= str.Split(new char[] { ' ' }, StringSplitOptions.RemoveEmptyEntries);
            //for (int i = 0; i < strt.Length/2; i++)
            //{
            //    string a = strt[i];
            //    strt[i] = strt[strt.Length - 1 - i];
            //    strt[strt.Length - 1 - i] = a;
            //}
            //str = string.Join(" ",strt);
            //Console.Write(str);
            //for (int i = 0; i < strt.Length; i++)
            //{
            //    Console.WriteLine(strt[i]);
            //}

            //练习三：从Email中提取出用户名和域名：abc@163.com
            //string email = "abc@163.com";
            //int index = email.IndexOf("@");
            //string username = email.Substring(0, index);
            //string yuming = email.Substring(index+1);
            //Console.WriteLine(username);
            //Console.WriteLine(yuming);


            //练习四：文件文本中储存了多个文章标题，作者，标题和作者之间有若干空格隔开，每行一个，
            //标题有的长有的短，输出到控制台的时候标题最多长度为10，如果超过10，则截取长度8的字串并且后面添加“....”，加一个竖线后输出作者名
            // string path = @"C:\Users\Administrator\Desktop\1.txt";
            //string[] contents= File.ReadAllLines(path,System.Text.Encoding.Default);
            // for (int i = 0; i <contents.Length; i++)
            // {
            //     string[]strnew = contents[i].Split(new char[] { ' ' }, StringSplitOptions.RemoveEmptyEntries);
            //     Console.WriteLine(strnew[0]+"|"+strnew[1]);
            // }

            //练习五：让用户输入一串字母.找出所有的e
            //string a = "aeeaeadaeeweejeke";
            //int num = a.IndexOf("e");//第一次出现的位置
            //int b = 1;
            //while (num != -1)
            //{
            //    b++;
            //    num = a.IndexOf("e", num + 1);
            //    if (num == -1)
            //    {
            //        break;
            //    }
            //    Console.WriteLine("第{0}次出现的e的位置是{1}",b,num);
            //}

            //练习六：让用户输入一句话，判断这句话中有没有邪恶，如果有邪恶就替换成这种形式后输出，如老牛很邪恶变成老牛很**
            //string num = "老牛很邪恶邪恶";
            //if (num.Contains("邪恶"))
            //{
            //    num = num.Replace("邪恶", "**");
            //    Console.WriteLine(num);
            //}


            //练习七：把{"诸葛亮","鸟叔","卡卡西","卡哇伊"}用|进行连接再把|切割掉
            //string[] names = { "诸葛亮", "鸟叔", "卡卡西", "卡哇伊" };
            //string a = string.Join("|", names);
            //string[] namess = a.Split(new char[] { '|' }, StringSplitOptions.RemoveEmptyEntries);

            //练习1：接受用户输入的字符串，将其中的字符以与输入相反的顺序输出。“abc”——>“cda”
            string a = "abcdefg";

            Console.ReadKey();
        }

    }
}
